interface IRes {
  code: number;
}
function returnPromise() {
  // js : new Promise
  // axios : axios.get().then(res=>{console.log(res)})
  // return new Promise<Array<IRes>>((resolve, reject) => {
  //   setTimeout(() => {
  //     resolve([{code : 200}]);
  //   }, 200);
  // });

  // 这种Promise的写法就不用约束了 : ts会自动推断
  return Promise.resolve([{ code: 200, msg: "success" }]);
}

// .then : 通过Promise的实例调用
function getRequest() {
  returnPromise().then((res) => {
    // ts : 约束res的类型
    console.log(res[0].code);
  });
}

// Array<类型>
// Promise<类型>

// 模拟一个请求  Promise + setTimeout : new  类去调用
// 返回的结果 是 {code : number , msg : string}
// 通过调用得到 res.code  res.msg
